home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
MacWorld 1999 June
/
Macworld (1999-06).dmg
/
Shareware World
/
Info
/
For Developers
/
MacZoop2.0.sea
/
MacZoop2.0
/
Required Classes
/
CursorUtilities.h
< prev
next >
Wrap
Text File
|
1999-01-25
|
2KB
|
94 lines
/*************************************************************************************************
*
*
* CursorUtilities.h - cursor stuff- spinning watch, etc
*
* 26/9/94 ©1994, Graham Cox
*
*************************************************************************************************/
#pragma once
#ifndef __CURSORUTILITIES__
#define __CURSORUTILITIES__
#include <Retrace.h>
// animated cursor record
#if PRAGMA_ALIGN_SUPPORTED
#pragma options align=mac68k
#endif
typedef struct
{
unsigned short numCursors;
unsigned short index;
CursHandle cursors[1];
}
acur, *acurPtr, **acurHdl;
// modified task record
typedef struct
{
VBLTask theTask;
long A5;
acurHdl theCursor;
}
VBLTaskWithA5, *VBLTaskWithA5Ptr;
#if PRAGMA_ALIGN_SUPPORTED
#pragma options align=reset
#endif
// prototypes
#ifdef __cplusplus
extern "C"
{
#endif
acurHdl InitAnimatedCursor( short resID );
void DisposeAnimatedCursor( acurHdl cursH );
void StartCursorAnimation( short period, acurHdl theCursor );
void StopCursorAnimation();
void PauseCursorAnimation( short tempFixedCursorID );
void ResumeCursorAnimation();
void AnimateCursor( short increment, acurHdl theCursor);
void LockCursorData( acurHdl theCursor );
void UnlockCursorData( acurHdl theCursor );
#ifndef __powerc
void VBLCursorSpin();
#else
void VBLCursorSpin( VBLTaskWithA5Ptr theTask );
#endif
void SetWatchCursor();
void SetBeachBallCursor();
void SetBusyArrowCursor();
short GetModifiers();
void AppCursorInit();
void AppCursorFree();
Boolean CursorAnimating();
Boolean CursorAnimationVBLRunning();
void SetCursorShape( short resID );
#ifdef __cplusplus
}
#endif
// constants
#define kWatchFrameCount 8
#define kWatchResID 129
#define kBeachBallResID 128
#define kBusyArrowResID 130
#endif